package com.zr.eim.mapper;

import java.util.List;
import com.zr.eim.domain.EimAnalysisScreen;
import com.zr.eim.domain.EimOuterCitizen;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;

/**
 * 外部输入人员Mapper接口
 * 
 * @author haomingxue
 * @date 2022-10-25
 */
public interface EimOuterCitizenMapper 
{
    /**
     * 查询外部输入人员
     * 
     * @param pid 外部输入人员主键
     * @return 外部输入人员
     */
    public EimOuterCitizen selectEimOuterCitizenByPid(Long pid);

    /**
     * 查询外部输入人员列表
     * 
     * @param eimOuterCitizen 外部输入人员
     * @return 外部输入人员集合
     */
    public List<EimOuterCitizen> selectEimOuterCitizenList(EimOuterCitizen eimOuterCitizen);

    /**
     * 新增外部输入人员
     * 
     * @param eimOuterCitizen 外部输入人员
     * @return 结果
     */
    public int insertEimOuterCitizen(EimOuterCitizen eimOuterCitizen);

    /**
     * 修改外部输入人员
     * 
     * @param eimOuterCitizen 外部输入人员
     * @return 结果
     */
    public int updateEimOuterCitizen(EimOuterCitizen eimOuterCitizen);

    /**
     * 删除外部输入人员
     * 
     * @param pid 外部输入人员主键
     * @return 结果
     */
    public int deleteEimOuterCitizenByPid(Long pid);

    /**
     * 批量删除外部输入人员
     * 
     * @param pids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteEimOuterCitizenByPids(Long[] pids);

    /**
     * 查询七日内入境人数及境外输入病例数
     * 需求模块：数据大屏
     */
    List<EimAnalysisScreen> getOuterCitizen();

    List<EimAnalysisScreen> getOuterDiagnostic();

    List<EimOuterCitizen> listExceptionOuterCitizen();

    /**
     *
     * @param idCard 人员身份证号
     * @param status 管控状态
     * @return 更新行数
     */
    int updateEimOuterCitizenControlStatus(@Param("idCard") String idCard,@Param("controlStatus") int status);
}
